﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
using MoviTiendas.Logica;

namespace MoviTiendas.Interfaz
{
    public partial class PaginaInfoTienda : PhoneApplicationPage
    {
        // ------------------------------------------------------------------------------------
        // Atributos
        // ------------------------------------------------------------------------------------

        /**
         * Tienda escogida en PaginaTiendas
         */
        public Tienda tienda { get; set; }


        // ------------------------------------------------------------------------------------
        // Constructor
        // ------------------------------------------------------------------------------------

        /**
         * Constructor de la clase
         */
        public PaginaInfoTienda()
        {
            InitializeComponent();
            tienda = ParametroPaginas.darParametroConIndice(0) as Tienda;
            PageTitle.Text = tienda.nombre;
            lblNombre.Text = tienda.nombre;
            lblDireccion.Text = tienda.direccion;
            lblTelefono.Text = tienda.telefono;
            lblDescripcion.Text = tienda.descripcion;
            lblHorario.Text = tienda.darHorario();

            if (MoviTienda.darInstancia.cliente.tiendasFavoritas.contieneTienda(tienda.nombre))
                btnAgregarAFavoritas.IsEnabled = false;
        }


        // ------------------------------------------------------------------------------------
        // Métodos manejadores de eventos
        // ------------------------------------------------------------------------------------

        /**
         * Maneja el evento en el que se oprime el botón btnAgregarAFavoritas
         * @sender - Objeto que envía el evento
         * @e - Evento
         */
        private void btnAgregarAFavoritas_Click(object sender, RoutedEventArgs e)
        {
            MoviTienda.darInstancia.cliente.tiendasFavoritas.tiendas.Add(tienda);
            btnAgregarAFavoritas.IsEnabled = false;

            MessageBox.Show("La " + tienda.nombre + " ha sido agregada a sus favoritas.", "Tienda favorita", MessageBoxButton.OK);
        }

        /**
         * Maneja el evento en el que se navega a la página
         * @e - Evento
         */
        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            if (MoviTienda.darInstancia.cliente.tiendasFavoritas.contieneTienda(tienda.nombre))
                btnAgregarAFavoritas.IsEnabled = false;
            else
                btnAgregarAFavoritas.IsEnabled = true;
        }
    }
}